/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package objets;

import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;

/**
 *
 * @author phoebus
 * @version 1
 */
public class axes {

    private String nom = null;
    private Double valeur = 0.d;
    private String format = "000.000";
    private Double lastvaleur = 0.d;
    private boolean modal = true;

    /**
     * affecte le nom de l axe
     *
     * @param nom
     */
    public void setNom(String nom) {
        this.nom = nom;
    }

    /**
     * Renvoi le nom de l axe
     *
     * @return
     */
    public String getNom() {
        return nom;
    }

    /**
     * affecte une valeur
     *
     * @param valeur
     */
    public void setValeur(double lavaleur) {
        this.setLastvaleur(this.valeur);// stockage de la valeur actuelle 
        // en valeur ancienne
        this.valeur = lavaleur;
    }

    /**
     * Renvoi la valeur de l axe
     *
     * @return
     */
    public double getValeur() {
        return valeur;
    }

    /**
     * Affecte le masque du format de l écriture
     *
     * @param valeur
     */
    public void setFormat(String valeur) {
        this.format = valeur;

    }

    /**
     * Renvoi le masque du format de l'écriture
     *
     * @return
     */
    public String getFormat() {
        return format;
    }

    /**
     * Renvoi le texte avec la valeur formatée
     *
     * @return
     */
    public String affiche() {
        
        if (!this.lastvaleur.equals(this.valeur)) {
            
        
        DecimalFormat formatter = new DecimalFormat(getFormat());
       // formatter.setMinimumIntegerDigits(4);

        DecimalFormatSymbols dfs = new DecimalFormatSymbols();
        dfs.setDecimalSeparator('.');
        formatter.setDecimalFormatSymbols(dfs);
        this.setLastvaleur(this.valeur);
        return this.nom + (formatter.format(this.valeur));
}
        else
        {
          return "";   
        }
       

    }

    /**
     * Renvoi la dernière valeur
     *
     * @return
     */
    public Double getLastvaleur() {
        return lastvaleur;
    }

    /**
     * Affecte la dernière valeur
     *
     * @param lastvaleur
     */
    public void setLastvaleur(Double lastvaleur) {
        this.lastvaleur = lastvaleur;
    }

    /**
     * Renseigne su la modalite de l'axe
     *
     * @return
     */
    public boolean isModal() {
        return modal;
    }

    /**
     * Affecte une modalite à l axe
     *
     * @param modal
     */
    public void setModal(boolean modal) {
        this.modal = modal;
    }
}
